﻿/**	@file		shower_types.h
 *	@date		(2011-08-03 20:45:43)/(2011-08-31 22:46:05)
 *-----------------------------------------------------------------------------
 *	@version	1.0.1.2
 *	@author		Nick Shallery	(nicknide@gmail.com)
 *	@copyright	YOU HAVE ALL LEFT WITH THIS CODE WHILE YOU KEEP COMMENT IN EVERY COPY.
 *-----------------------------------------------------------------------------
**/

#if			!defined(__LOLIX__LXSHOWER__SHOWER_TYPES__NICK__K_IN_G__)
#define		__LOLIX__LXSHOWER__SHOWER_TYPES__NICK__K_IN_G__


#if			!defined(__LOLIX__SOLA__BOUNDS__NICK__K_IN_G__)
	#include	"../lolix/sola/bounds.hpp"
#endif	//	!defined(__LOLIX__SOLA__BOUNDS__NICK__K_IN_G__)

#if			!defined(__LOLIX__SOLA__QUATERNION__NICK__K_IN_G__)
	#include	"../lolix/sola/quaternion.hpp"
#endif	//	!defined(__LOLIX__SOLA__QUATERNION__NICK__K_IN_G__)

#if			!defined(__LOLIX__SOLA__VEC__NICK__K_IN_G__)
	#include	"../lolix/sola/vec.hpp"
#endif	//	!defined(__LOLIX__SOLA__VEC__NICK__K_IN_G__)

namespace lxshower{
	typedef lolix::sola::vec<3, lolix::lx_f32>		shower_position;
	typedef shower_position shower_size;
	typedef lolix::sola::bound_ball<lolix::lx_f32>	shower_bound_ball;	//	x, y, z, r
	typedef lolix::sola::quaternion<lolix::lx_f32>	shower_rotation;
	typedef lolix::sola::aabb<lolix::lx_f32>		shower_bound_box;

	struct shower_space
	{
		shower_position		pos;
		shower_size			scale;
		shower_rotation		rotation;
	};
}

#endif	//	!defined(__LOLIX__LXSHOWER__SHOWER_TYPES__NICK__K_IN_G__)
